package com.wyy.service;

import com.wyy.pojo.Users;
import com.wyy.pojo.model.UserToken;

import java.util.Map;

/**
 * @program: gytcb
 * @author: 吴磊
 * @create: 2021-06-02 11:03
 */
public interface UsersService {

    /**
     * 根据用户名称模糊查询用户
     *
     * @param userToken
     * @return
     */
    Map<String, Object> getUserByNameLike(UserToken userToken);


    /**
     * 获取所有的用户
     *
     * @return
     */
    Map<String, Object> getAllUsers();

    /**
     * 用户根据邮箱或者用户名登录
     *
     * @param userNickName
     * @param userPassword
     * @return
     */
    Map<String, Object> login(String userNickName, String userPassword);

    /**
     * 通过用户昵称获取用户
     *
     * @param userNickname
     * @return
     */
    Map<String, Object> getUserByUserNickname(String userNickname);

    /**
     * 通过邮箱获取用户
     *
     * @param userEmail
     * @return
     */
    Map<String, Object> getUserByUserEmail(String userEmail);

    /**
     * 注册用户
     *
     * @param users
     * @return
     */
    Map<String, Object> register(Users users);


    /**
     * 更新用户数据
     *
     * @param users
     * @return
     */
    Map<String, Object> updateUser(Users users);

    /**
     * 用户修改密码的时候判断密码是否正确
     *
     * @param password
     * @return
     */
    Map<String, Object> userPasswordIsOK(String password);

    /**
     * 获取用户的详细信息（密码除外）
     *
     * @param userId
     * @return
     */
    Map<String, Object> getUserById(String userId);
}
